<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>10倍好 系统六大能力测评</title>
    <style>
        body {
            font-family: 'Helvetica Neue', Arial, sans-serif;
            margin: 0;
            padding: 0;
            background-color: #E6F0FA;
            color: #333;
            line-height: 1.6;
        }
        .container {
            max-width: 100%;
            margin: 0 auto;
            padding: 20px;
            box-sizing: border-box;
        }
        h1 {
            text-align: center;
            color: #FFD700;
            font-size: 2.5em;
            margin-bottom: 20px;
        }
        h2 {
            color: #1E90FF;
            font-size: 1.8em;
            margin-top: 20px;
        }
        p, ul {
            font-size: 1.1em;
            margin-bottom: 15px;
        }
        ul {
            padding-left: 20px;
        }
        img {
            max-width: 100%;
            height: auto;
            display: block;
            margin: 20px auto;
            border-radius: 10px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }
        form {
            background-color: #fff;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            margin-bottom: 20px;
        }
        label {
            display: block;
            margin-bottom: 10px;
            font-weight: bold;
            color: #1E90FF;
        }
        input {
            width: 100%;
            padding: 10px;
            margin-bottom: 15px;
            border: 1px solid #ddd;
            border-radius: 5px;
            box-sizing: border-box;
            font-size: 1em;
        }
        button {
            background-color: #1E90FF;
            color: #fff;
            padding: 12px 20px;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            font-size: 1.1em;
            width: 100%;
            transition: background-color 0.3s;
        }
        button:hover {
            background-color: #FFD700;
            color: #333;
        }
        #result {
            background-color: #fff;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            margin-top: 20px;
            line-height: 1.8;
        }
        @media (max-width: 600px) {
            h1 { font-size: 2em; }
            h2 { font-size: 1.5em; }
            p, ul { font-size: 1em; }
            input, button { font-size: 0.9em; }
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>10倍好 系统六大能力测评</h1>
        
        <h2>介绍</h2>
        <p>你好，我是「10倍好」系统六大能力测评师，我来协助你完成六大能力测评啦！请查看下列图片，然后调整呼吸、放松心情、让自己安静下来，以此刻你当下的状态来看图，用你的心来回答下列问题。</p>
        
        <img src="https://gitee.com/mf13890040712/pubres/raw/master/res/igs/better10-power6-show.png" alt="六大能力测评表格">
        
        <h2>请回答</h2>
        <form id="testForm">
            <label>非常符合 (4个顺序号，用逗号分隔，如1,2,3,4)：</label><br>
            <input type="text" id="very" required><br>
            
            <label>比较符合 (4个顺序号，用逗号分隔)：</label><br>
            <input type="text" id="compare" required><br>
            
            <label>偶尔符合 (4个顺序号，用逗号分隔)：</label><br>
            <input type="text" id="occasional" required><br>
            
            <button type="button" onclick="calculate()">计算结果</button>
        </form>
        
        <div id="result"></div>
    </div>
    
    <script>
        const grid = [
            {num:1, sign:'+', letter:'M', desc:'自律性强'},
            {num:2, sign:'+', letter:'Q', desc:'情绪稳定'},
            {num:3, sign:'+', letter:'Z', desc:'真实诚'},
            {num:4, sign:'+', letter:'K', desc:'地重而实'},
            {num:5, sign:'+', letter:'S', desc:'顺其自然'},
            {num:6, sign:'+', letter:'K', desc:'内心强大'},
            {num:7, sign:'-', letter:'M', desc:'缺乏目标'},
            {num:8, sign:'-', letter:'X', desc:'缺乏自信'},
            {num:9, sign:'+', letter:'Z', desc:'注意细节'},
            {num:10, sign:'+', letter:'Q', desc:'充满热情'},
            {num:11, sign:'-', letter:'S', desc:'固执刻板'},
            {num:12, sign:'-', letter:'X', desc:'心浮气躁'},
            {num:13, sign:'-', letter:'M', desc:'缺乏自律'},
            {num:14, sign:'-', letter:'Q', desc:'易被影响'},
            {num:15, sign:'-', letter:'Z', desc:'容易分心'},
            {num:16, sign:'-', letter:'K', desc:'易难缠'},
            {num:17, sign:'-', letter:'S', desc:'理智过度'},
            {num:18, sign:'-', letter:'K', desc:'容易受伤'},
            {num:19, sign:'+', letter:'M', desc:'目标明确'},
            {num:20, sign:'+', letter:'X', desc:'自尊心强'},
            {num:21, sign:'-', letter:'Z', desc:'动辄大意'},
            {num:22, sign:'-', letter:'Q', desc:'焦虑紧张'},
            {num:23, sign:'+', letter:'S', desc:'灵活变通'},
            {num:24, sign:'+', letter:'X', desc:'不折不挠'}
        ];
        
        function calculate() {
            const very = document.getElementById('very').value.split(',').map(Number);
            const compare = document.getElementById('compare').value.split(',').map(Number);
            const occasional = document.getElementById('occasional').value.split(',').map(Number);
            
            if (very.length !== 4 || compare.length !== 4 || occasional.length !== 4) {
                alert('每个类别必须输入exactly 4个顺序号！');
                return;
            }
            
            const totals = {M:0, Z:0, X:0, S:0, K:0, Q:0};
            const details = {M:[], Z:[], X:[], S:[], K:[], Q:[]};
            
            function addScore(nums, score) {
                nums.forEach(num => {
                    const item = grid.find(g => g.num === num);
                    if (item) {
                        const multiplier = item.sign === '+' ? 1 : -1;
                        const value = score * multiplier;
                        totals[item.letter] += value;
                        details[item.letter].push({num: num, desc: item.desc, value: value, score: score});
                    } else {
                        alert(`无效顺序号: ${num}`);
                    }
                });
            }
            
            addScore(very, 5);
            addScore(compare, 3);
            addScore(occasional, 1);
            
            let resultText = '<h3>计算规则说明</h3>';
            resultText += '<p>计算方法：非常符合=5分，比较符合=3分，偶尔符合=1分。根据格子中的+/-符号加减到对应力量。总分 = 非常符合分 + 比较符合分 + 偶尔符合分；每部分包括小格子顺序号及其中文描述和加减分值。</p>';
            resultText += '<h3>结果分提升指引</h3>';
            resultText += '<ul>';
            resultText += '<li><strong>目标力（M）</strong>：<br>- 负分：<br>1. 有很多想做成的事情，但缺乏清晰路径；<br>2. 从来没有给自己定过目标，要找到清晰的目标可能需要外力帮忙（如找导师或使用目标管理工具）。</li>';
            resultText += '<li><strong>专注力（Z）</strong>：<br>- 负分：<br>专注在一件“最想成”的事情上，要帮助他做目标的断舍离，推荐《最重要的事只有一件》。</li>';
            resultText += '<li><strong>自信力（X）</strong>：<br>- 负分：<br>没有专注在目标上，没有拿到结果，造成了自信力低。当你帮他聚焦专注力和目标力，自信力自然会提升。</li>';
            resultText += '<li><strong>适应力（S）</strong>：<br>- 正分：发挥适应力去成事；<br>- 负分：适应新环境能力不佳，要专注于自己擅长的事情。不要轻易做新的尝试，不然自信力也会受到影响。</li>';
            resultText += '<li><strong>抗挫力（K）</strong>：<br>- 正分：很强说明最近在硬扛一些事，或者在接受挑战很大的事情。尤其是其他力都很低的情况，说明他在被动坚持一些自己不擅长的事情，要帮助他重新找到擅长的领域；<br>- 若抗挫力和目标力都很高：要去鼓励他成事。</li>';
            resultText += '<li><strong>情绪力（Q）</strong>：<br>- 负分：情绪来自哪里，要和目标结合（如情绪波动是否因目标受阻）。</li>';
            resultText += '<li><strong>全正卡牌</strong>：<br>说明目标不够大，所以需要调大目标，然后倒推步骤。</li>';
            resultText += '</ul>';
            
            for (let letter of ['M', 'Z', 'X', 'S', 'K', 'Q']) {
                const total = totals[letter];
                let detailText = '';
                details[letter].forEach(d => {
                    detailText += `${d.score} (${d.num}中文${d.desc}${d.value >= 0 ? '+' : ''}${d.value})`;
                    if (details[letter].indexOf(d) < details[letter].length - 1) detailText += ' + ';
                });
                resultText += `<p>${letter} (目标力): ${total} = ${detailText};</p>`;
            }
            
            document.getElementById('result').innerHTML = resultText;
        }
    </script>
</body>
</html>